package ru.urfc.portal.ui.client.model.catalogs;

import ru.urfc.portal.ui.client.Style;

public abstract class NetState extends CatalogItemWithStyle {

	static public final NetState ANNULATED = new NetState("Z", "Аннулированная") {
		@Override
		public String getStyleName(Style style) {
			return style.netAnnulated();
		}
	};
	
	static public final NetState METERING = new NetState("Y", "Измерения") {
		@Override
		public String getStyleName(Style style) {
			return style.netMetering();
		}
	};
	
	static public final NetState ON_APPROVAL = new NetState("3", "На согласовании") {
		@Override
		public String getStyleName(Style style) {
			return style.netOnApproval();
		}
	};

	static public final NetState NOT_APPROVED = new NetState("X", "Не согласованная") {
		@Override
		public String getStyleName(Style style) {
			return style.netNotApproved();
		}
	};

	static public final NetState PLANNED = new NetState("1", "Планируемая") {
		@Override
		public String getStyleName(Style style) {
			return style.netPlanned();
		}
	};
	
	static public final NetState ENABLED = new NetState("W", "Работающая") {
		@Override
		public String getStyleName(Style style) {
			return style.netEnabled();
		}
	};

	static public final NetState APPROVED = new NetState("5", "Согласованная") {
		@Override
		public String getStyleName(Style style) {
			return style.netApproved();
		}
	};
	
	static public NetState[] values = {ENABLED, ANNULATED, ON_APPROVAL, NOT_APPROVED, APPROVED, PLANNED, METERING}; 
	
	protected NetState(String code, String text) {
		super(code, text);
	}

}